A developer may program computer applications using a plurality of service application programming interfaces (APIs). An application pattern may be discovered by analyzing applications that developers have created and identifying reusable configurable composition of service APIs, for example for replicable business scenarios. In an API centric application, the composition of services represents an orchestration and provides a perspective in the application pattern. In the current approach to creating an application pattern, experts create a pattern based on existing applications.